package com.example.demo.bb;

import cn.hutool.core.io.FileUtil;
import org.apache.commons.io.FileUtils;

import java.io.File;
import java.nio.file.Path;
import java.nio.file.Paths;

public class CopyFiles {

    public static final String FROM = "E:\\知识库-文档资料\\招标代理\\PPP项目涉及法规";
    public static final String TO = "E:\\知识库-文档资料\\招标代理\\PPP项目涉及法规结果\\";

    /**
     * 把源文件夹里面的文件 复制到 目标文件夹中
     *
     * @param args
     * @throws Exception
     */
    public static void main(String[] args) throws Exception {
        File folder = new File(FROM);
        listFiles(folder);
        System.out.println("操作成功了");
    }

    public static void listFiles(File folder) throws Exception {
        if (folder.isDirectory()) {
            File[] files = folder.listFiles();
            if (files != null) {
                for (File file : files) {
                    if (file.isDirectory()) {
                        // 如果是文件夹，递归调用 listFiles() 方法
                        listFiles(file);
                    } else {
                        // 如果是文件，打印文件名
                        System.out.println(file.getPath());
                        String filename = file.getName();
                        if (filename.endsWith(".doc") || filename.endsWith(".DOC")) {
                            Path p1 = Paths.get(file.getPath());
                            Path p2 = Paths.get(TO + "0_doc");
                            FileUtil.mkdir(TO + "0_doc");
//                            boolean exists = FileUtil.exist(file.getPath());
//                            if (!exists){
                                FileUtils.copyFileToDirectory(p1.toFile(), p2.toFile());
//                            }
                        } else {
                            Path p1 = Paths.get(file.getPath());
                            Path p2 = Paths.get(TO + "0_doc_no");
                            FileUtil.mkdir(TO + "0_doc_no");
//                            boolean exists = FileUtil.exist(file.getPath());
//                            if (!exists) {
                                FileUtils.copyFileToDirectory(p1.toFile(), p2.toFile());
//                            }
                        }
                    }
                }
            }
        }
    }


}
